#include <fstream>
#include <iostream>
using std::cout;
using std::endl;
using std::ifstream;
using std::string;

void test0(){
    string filename = "Point.cc";
    //创建文件输入流对象，同时绑定了filename对应的文件
    ifstream ifs(filename);

    //想要读取一个文件的所有内容，要先获取文件的大小
    //第一个参数代表相对第二个参数位置偏移量
    //第二个参数代表三个固定的锚点
    //此时把游标设置为了文件结尾位置
    ifs.seekg(0,std::ios::end);
    //tellg返回的就是游标位置
    long length = ifs.tellg();
    cout << "length:" << length << endl;

    char * pdata = new char[length + 1]();
    //使用read函数会从游标位置往后读取
    //所以需要再把游标设置到文件开头的地方
    /* ifs.seekg(0); */
    ifs.seekg(0,std::ios::beg);
    ifs.read(pdata,length);
    cout << pdata << endl;

    ifs.close();

}

int main(void){
    test0();
    return 0;
}
